// miniprogram/pages/mycard/mycard.js
const app = getApp();
const db = wx.cloud.database();
const col = db.collection('lesson020');
const _ = db.command;

Page({

  /**
   * 页面的初始数据
   */
  data: {
    words:[],
    selected: 0,
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

    col.where({
      '_openid': app.globalData.openid
    }).get().then((res)=>{
      console.log('myCard',res);
      if (res.data.length > 0){
        let words = res.data[0].words;
        this.setData({
          words : words
        })
      }
    });
  },
  // 选择邮字
  select(e){
    // 下标
    let index = e.currentTarget.dataset.index;
    // 获取data中words
    let { words , selected } = this.data;
    // 限制用户必须拥有这个字 number != 0
    if( words[index].number == 0 ){
      return ;
    }
    // 1. 已选中两个，选第三个需要阻止
    // 2. 如果已选两个，但点击的是已选中的话，不进入判断
    if( selected>=2 && !words[index].check ){
      return ;
    }

    if( !words[index].check ){
      // 未选中
      words[index].check = true;
      selected ++;
    }else{
      // 已选中
      words[index].check = false;
      selected --;
    }

    // 最终结果设置
    this.setData({
      words: words,
      selected:selected
    })

  },

  // 合成
  merge(){
    // selected必须为2
    let { selected , words } = this.data; 
    if( selected < 2 ){
      wx.showToast({
        title: '必须选择2个邮卡',
        icon: 'none',
        duration: 1500,
      });
      return ;
    };

    let selectedArr = [];     // 存放用户选择的下标
    words.forEach( (item,index)=>{
      if(item.check == true){
        selectedArr.push(index);
      }
    })

    wx.cloud.callFunction({
      name: 'merge',
      data:{
        selectedArr : selectedArr
      },
      success : (res)=>{
        console.log(res);
        if(res.result.success){
          let prize = res.result.prize;
          wx.showToast({
            title: '你抽到了'+prize+'等奖' ,
            icon: 'sucess',
            duration: 1500,
          });

          this.setData({
            words : res.result.words
          })

        }else{
          
          wx.showToast({
            title: res.result.msg ,
            icon: 'none',
            duration: 1500,
          });
        }
      }
    })

  },


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})